Data providing system, method and computer program

ABSTRACT

A data providing system utilizes the resources of a digital broadcast and a network efficiently so as to provide data for a great number of users at high efficiency. The system includes a server station for communicating with terminal devices individually via the network, and a host station for transmitting the same data to all the terminal devices all at once in real time by the digital broadcast. Individual data and light-load data are handled by the server station, and the information such as load data, which should be shared by the terminal devices, are handled by the host station.

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application is based upon and claims the benefit of priorityfrom the prior Japanese Patent Application No. 2000-229131, filed Jul.28, 2000, and 2001-207024, filed Jul. 6, 2001, the entire contents ofboth of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

[0002] The present invention relates to a data providing technique forproviding useful information for users in real time, achieved bycombining a personal communication mode which utilizes a network such asthe Internet and a global data distribution mode such as a digitalbroadcast.

[0003] Digital broadcasts using cables, artificial satellites and groundwaves are now very popular. The digital broadcasts include not only amode for distributing program data to an indefinite number of persons inthe general public as its objects (to be referred to as “normaldistribution” hereinafter), but also a mode for delivering contents ofmovies, games and the like for particular persons at cost (to bereferred to as “contents delivery”).

[0004] In the case of the normal distribution, a distributor prepares abroadcast station (to be called “host station” hereinafter) fordistributing program data. A user side is equipped with an antenna, adigital receiving unit, a display unit and an audio unit, and programdata transmitted from the host station is received through the antenna,and the received data is reproduced by the digital receiving unit in theform of a corresponding image and sound. More, specifically, the imageis displayed on the display unit and the sound is outputted from theaudio unit.

[0005] In the case of the contents delivery, a distributor prepares aserver station for managing users of subjects to whom data should bedelivered, in addition to the host station. A user side prepares an STB(set top box) which can be connected to a network such as the Internet,in addition to an antenna, a digital receiving unit, a display unit andan audio unit. In this specification, these units equipped on the userside are called “terminal device”. The server station and a terminaldevice are set up to receive or transmit data through the network.

[0006] When a user makes a request for contents to the server stationvia the terminal device and the network, the server station carries outidentification of the user who made the request, and then transmits keydata to be used for the restoration of the contents, which are encodedor scrambled, to the terminal device of the user. At the same time, theserver station instructs the host station which performs the digitaldistribution, to transmit the ordered contents (encoded or scrambled) tothe user.

[0007] The host station transmits the ordered contents upon theinstruction of the server station.

[0008] The terminal device receives the distributed contents andrestores the contents using the key data transmitted from the severstation. Of the restored contents, the image is displayed on the displayunit and the sound is outputted from the audio unit.

[0009] In the above-described procedure, the user can enjoy the contentsat cost.

SUMMARY OF THE INVENTION

[0010] In the conventional contents distribution, the digital broadcastfrom the host station is used only for the distribution of the contentswhich are encoded or scrambled, and the network connecting the serverstation and the terminal device is used only for the transmission andreception of the order of contents and the key data. Thus, the resourcefor the digital broadcast and that for the network are completelyseparated from each other in terms of their functions and there is noorganic usage done such as that these resources are associated with eachother if necessary in real time. As a result, conventionally, theseresources are not fully utilized.

[0011] The main object of the present invention is to provide a dataproviding technique capable of providing multi-objective data at a highefficiency to the users, by making a full use of the resources fordistributing the digital data.

[0012] In order to achieve the above-described object, there isprovided, according to the present invention, a data providing systemincluding: a first device for communicating individually with aplurality of terminal devices; and a second device for transmitting datato all of terminal devices that are in communicable state with the firstdevice at once.

[0013] One of the first and second devices transmits part ofreproducible data to be provided to those of the terminal devices whichare in a communicable state with it. The rest of the data to be providedis transmitted to those in communicable state from the other of thefirst device and the second device. In this manner, the provided data isreproduced in those terminal devices in real time.

[0014] The terminal devices and the first device are connected with eachother via a network. The first device can be structured to transmitindividual data prepared in accordance with a request from any one ofterminal devices to that one. In this case, the second device isstructured to transmit common data indicating the operation status ofthe network, which changes occasionally in accordance with the load onthe first device, to all of the terminal devices at once. With theabove-described structure, the user can find the operation status of thenetwork from the second device before trying to access the first devicethrough the terminal device of the user, and thus it is possible toprevent a decrease in the load on the network caused by unnecessaryaccessing to the first device.

[0015] In the case where there are a plurality of first devices, thesecond device transmits operation status data indicating the operationstate of the network, which changes occasionally in accordance with theload on the respective one of the first devices, to all of the terminaldevices at once, and transmits as a proxy data to be sent by the firstdevice when some or all of said plurality of first devices have a loadwhich exceeds a predetermined value. With this structure, the user canfind desired data through the second device even when the load on thenetwork is so heavy that it is not possible to access the first device.Therefore, the data providing system can provide the user with desireddata while preventing an increase in the load on the network.

[0016] At least one of said plurality of first devices further includes:a data generating unit for generating load data indicating a load statusof said at least one of devices which changes occasionally in accordancewith an access status sent from said plurality of terminal devices; anda unit for transmitting thus generated load data to the second device inreal time. The second device generates the operation status data on thebasis of the load data received from one of the first devices.

[0017] Further, there is provided, according to the present invention, adata providing system for providing data via a logical space which canbe referred to by a terminal device.

[0018] This data providing system includes: a first device forcommunicating individually with a plurality of terminal devices eachconnected to a network; and a second device for transmitting data of thesame contents to these terminal devices all at once.

[0019] These terminal devices and the first device are of types whichcan form a common logical space. The first device detects a request ofrevision of the logical space from at least one terminal device, andchanges the logical space on the basis of the detected status. Thesecond device sends the status of the logical space after revision inthe first device all at once to said plurality of terminal devices inreal time.

[0020] In the case where a plurality of first devices are used, thesefirst devices are formed to have logical spaces accessible by aplurality of terminal devices, these logical spaces are formed dispersedfrom each other but associated with each other. The second device, whenthe status of the logical space changes in any one of the first devices,provides the statuses of all the logical spaces after the change to saidplurality of terminal devices in real time. With this structure, it ispossible to provide data at high degree while lightening the load oneach and individual first device (the load resulting in operating thelogical space). Further, the status of some other first device which isnot accessed can be known through the second device, and therefore theuser can find the data of the entire logical space while obtaining datafrom the logical space.

[0021] At least one of said plurality of first devices further includes:a status changing unit for forming a logical space having the samestructure as the logical space formed in the first device to be accessedby the self terminal device, within the self, and for changing thestatus of the formed logical space, and a data transmitter fortransmitting, when the status of the logical space within the selfterminal device has changed, data indicating the changed status to thefirst device to be accessed by the self device in real time.

[0022] The second device described above may be constructed by anexclusive-use data providing device capable of communicatingindividually with these first devices, and transmitting data all at onceto these terminal devices. This device may be constituted by a computerhaving a communication function and a computer program executed as it isread by the computer, in such a manner that they function in cooperationwith each other.

[0023] The present invention further provides a plurality of examples ofthe data providing method which is operated via a network.

[0024] The method according to the first example is of a typecharacterized by including the steps of: distributing part of data to beprovided to a plurality of terminal devices connected a network, to afirst device communicable individually to each of said plurality ofterminal devices; distributing a rest of data to be provided, to asecond device which transmits data towards said plurality of terminaldevices all at once; and transmitting the data distributed to the firstdevice and the second device at the same time, thereby enabling each ofsaid plurality of terminal devices to reproduce the data to be providedin real time. With this method, it is possible to organically utilizethe broadcasting and the network.

[0025] The second example of the method is of a type including the stepsof: distributing individual data to be provided to those of a pluralityof terminal devices connected a network, that has made a request, to afirst device communicable individually to said plurality of terminaldevices; distributing data indicating a load status of the first deviceor the network, to a second device which transmits data towards saidplurality of terminal devices all at once; and transmitting the datadistributed to the second device prior to transmission of the datadistributed to the first device, thereby enabling to present the loadstatus of the first device when the terminal device actually hasaccessed the first device, or the load status of the network to aterminal device which is accessing to the first device. With thismethod, the loading status can be known in advance, and thereforeunnecessary accessing will not be made from a terminal device.

[0026] The third embodiment of the method is of a type including thesteps of: forming a logical space common to a plurality of terminaldevices connected a network, and a first device communicableindividually to each of said plurality of terminal devices; andtransmitting, when a status of the logical space has changed inaccordance with an accessing status from any of said plurality ofterminal devices, a status of the changed logical space, to all of saidplurality of terminal devices at once in real time. Thus, an object ismade to appear, move and delete in logical spaces, and in this manner,common data can be visually provided.

BRIEF DESCRIPTION OF THE DRAWINGS

[0027] These objects and other objects and advantages of the presentinvention will become more apparent upon reading of the followingdetailed description and the accompanying drawings in which:

[0028]FIG. 1 is a structural diagram showing a data providing systemaccording to the present invention;

[0029]FIG. 2 is a structural diagram showing functions of a serverstation;

[0030]FIG. 3 is a structural diagram showing functions of a hoststation;

[0031]FIG. 4 is a structural diagram showing the hardware of the hoststation;

[0032]FIG. 5 is an explanatory diagram illustrating the technicalconcept of the first example of the operation of the system;

[0033]FIG. 6 is an explanatory diagram illustrating the technicalconcept of the second example of the operation of the system;

[0034]FIG. 7 is an explanatory diagram illustrating the procedure of thesystem in the first example of the operation; and

[0035]FIG. 8 is an explanatory diagram illustrating the procedure of thesystem in the second example of the operation.

DETAILED DESCRIPTION

[0036] Embodiments of the data providing system to which the presentinvention is applied will now be described in detail.

[0037] The data providing system of this embodiment is capable ofproviding data to a great number of users as objects, and has such astructure as shown in FIG. 1, in which a plurality of server stations 2,each of which is an example of the first device, and a host station 3,which is an example of the second device, are connected together via anetwork, and also each server station 2 and a terminal device 1 operatedby the user are connected via a network 4. The host station carried outdigital broadcasting via a satellite BC.

[0038] As the networks 4 and 5, the Internet can be used. When only theInternet is used, there may be the time when it is difficult to connecta terminal device to the server station 2, in case where a number ofterminal devices 1 start the setting-up of the communications at thesame time. For this reason, if it is necessary to assure thecommunication between the server station 2 and the host station 3, it ispreferable that independent networks are employed for the networks 4 and5, respectively, rather than using only the Internet.

[0039] The structures of the server station 2, the host station 3 andeach of the terminal devices 1 will now be described.

SERVER STATION

[0040] The server station 2 transmits and receives individual databetween itself and the terminal device 1, and also requests the hoststation 3 to transmit data common to all the terminal devices 1, to thatparticular device. If necessary, the server station 2 passes databetween itself and the terminal device via a virtual reality space whichis an example of the logical space.

[0041] The server station which is operated as described above can berealized by a computer including a CPU (central processing unit), acommunication mechanism, a RAM (random access memory), a ROM (read onlymemory) and a memory device. The CPU reads and executes a predeterminedprogram and data, and thus forms a function block and data file, whichare used to realize the processing operation executed by the serverstation 2, as will be described later. Programs and the like are storedin the memory device which can be read by the CPU, or distributed viathe network. The communication mechanism is of a conventionally knowntype for transmitting and receiving data between the server station andthe terminal device 1 as well as the host station 3 via the networks 4and 5. More specifically, this mechanism includes a section forreceiving and transmitting data from and to the terminal device 1, andanother section for receiving and transmitting data from and to the hoststation 3, and these sections independently carries out the transmissionand reception of data. The RAM temporarily stores data generated as aresult of each processing operation, as well as data transmitted fromthe terminal device or the host station 3 via the communicationmechanism. The ROM stores basic programs and data necessary for theoperation of the server station 2. The memory device is a so-called harddisk in which a magnetic recording medium is equipped, and it stores,for example, large-size data such as the operating system andapplication programs.

[0042] An example of the structuralized functions formed by the CPU isshown in FIG. 2. As can be seen in FIG. 2, the server station 2 has acommunication control section 210 and a main control section 211, andfurther various types of data files a user data storage unit D1, ahistorical data storage unit D2, a parts storage unit D3, a global datastorage unit D4, an individual data storage unit D4, and an site datastorage unit D6 (here the term “site” refers to a server station orother Web server, and the term will be used in that meaninghereinafter).

[0043] The main control unit 211 further includes a user management unit212, a load analysis unit 213, a virtual reality space generating unit214, a provided data managing unit 215 and a site management unit 216each as a module in execute mode which is initiated when a respectiveprocessing and the like is requested.

[0044] The communication control unit 210 is used to transmit andreceive data among itself, the host station 3, the terminal device 1 andother site. When the communication control unit 210 transmits andreceives individual data between itself and a terminal device 1, itreceives instruction data from the terminal device 1 serving as acommunication opponent, and sends back data in response to theinstruction data to the terminal device 1 which made the instruction.

[0045] The user management unit 212 carries out authentication of theuser at the time of accessing on the basis of, for example, the useridentification data and the password stored in the user data storageunit D1, and then, if necessary, executes operations such as carried outby a server station in the conventional digital broadcasting, forexample, sending a key of cryptograph to the terminal device 1. The loadanalysis unit 213 analyzes the present load status of the self stationon the basis of the number of access made by the terminal device 1 tothat station, the results of the past analysis stored in the historicaldata storage unit D2, and the processing contents of the same type tothe terminal device 1.

[0046] The virtual reality space generating unit 214 generates a virtualreality space which can be shared with each terminal device 1, from thestructural elements of the virtual reality space stored in the partsstorage unit D3, such as a background image and an object imageexpressed by parts data, material data and the like. The virtual realityspace is generated to a predetermined region of an external memorydevice or an auxiliary memory device, which can be read by the CPU. Thevirtual reality space is a global space virtually established, in which,for example, network games are played using ordinary Internet homepagesand the Internet. The virtual reality space can provide common data tothe users via the terminal devices 1.

[0047] The provided data management unit 215 specifies the individualdata to be provided to a terminal device 1 upon request of the terminaldevice 1 itself, and global data provided via the host station 3. Theglobal data contains, for example, load data indicating the status ofthe self station as to how busy it is, or the status (how busy it is) ofconnection of the network 4 to the self station, or data indicating thechanging status of the virtual reality space when the instruction fromthe terminal device 1 is reflected on the virtual reality space. Theglobal data is usually stored in the global data storage unit D4. Theindividual data is data addressed to the individual user, and is storedin the individual data storage unit D5. It should be noted here that, asan alternative structure, the individual data may be acquired from anexternal system at each time of the distribution.

[0048] The site management unit 216 manages data passed between itselfand some other sites related to the data distribution. Morespecifically, the identification data of the involved site and the datareceived from the site are stored in the other site data storage unitD6, and these data are provided appropriately in response to a requestfrom the terminal device 1.

HOST STATION

[0049] The host station 3 distributes contents and various types of datareceived from the server station 2 and the like, to each of the terminaldevices 1 via the digital broadcast. In this embodiment, the digitalbroadcast is done by the satellite BC; however as long as it is possibleto transmit data all at once to terminal devices of an indefinite numberof persons in the general public, other modes can be employed such asground waves and cables. Data to be distributed are provided from theserver stations 2 in real time.

[0050] The host station 3 has a structure of a type of a computer whichincludes the CPU, communication mechanism, RAM, ROM and digitalbroadcast mechanism. The CPU reads and executes the programs and datastored in the ROM, and thus sets up functions for operating the computeras the host station 3. The communication mechanism is used to transmitand receive data between a plurality of server stations and other sitesvia the network 5. The RAM temporarily stores data generated as a resultof each processing operation. The ROM stores basic programs and datanecessary for the operation of the host station 3. The digital broadcastmechanism distributes not only ordinary contents but also data to bedistributed to each terminal device 1 as common data via the satelliteBC.

[0051] An example of the structuralized functions formed by the hoststation 3 is shown in FIG. 3. As can be seen in FIG. 3, the host station3 has modules in execute form, which are read out when the device isstarted, such as a communication control section 310, a broadcastcontrol unit 311, a site management unit 312 and a provided datamanagement unit 313, and also data files such as a site use statusstorage unit D11, a site data storage unit D12, a map data storage unitD13 and a parts storage unit D14.

[0052] The communication control unit 310 transmits data received fromeach server station 2 to the site management unit 312. Here, ifnecessary, individual data are transmitted between the communicationcontrol unit and each server station 2, and further this unit 311transmits the same data to each server station 2 all at the same timeall.

[0053] The broadcast control unit 311 controls the digital broadcastcarried out via the satellite BC, that is, the entire transmissionoperation in which the same data are transmitted all at the same time toeach and every terminal device 1.

[0054] The site management unit 312, as required, stores and manages theidentification data of each server station 2 to the site data storageunit D12, and further monitor or analyze the load data sent from eachserver station 2 and stores the result data to the site use statusstorage unit D11 for each server to be managed. Usually, load data isnotified from each server station 2; however it can be analyzedautonomously. The site management unit 312 manages a reference valuedetermined for each site. When the load in a server station 2 is equalto or more than the reference value for the site, the management unit312 judges that the server station 2 is in a congested state, and sendsto the server station 2 such a instruction to transmit necessary data inorder for some other one in place of the server station 2 to provide thedata to the respective terminal device 1.

[0055] The provided data management unit 313 sorts and integrate globaldata sent from each server station 2, and further prepares useful datato be provided for each user, to be transmitted to the broadcast controlunit 311. The useful data are, for example, the load of each serverstation 2 and the load status of the network 4, and they are mapped withpredetermined map data stored in the map data storage unit D13, beforethey are provided. The map data contains, for example, a congestion map,which visually expresses the degree of congestion, which constantlychanging in real time, for each site (that is, Real Time CongestionMap). Further, this unit provides information as to which site is busyand which site is popular in a menu form.

[0056] These useful data are common data which are used to notify toeach and every user, and they are formed on the basis of the data sentfrom each server station 2. In the case where useful data is provided inthe form of a virtual reality space, background images and object imageswhich can be formed from the parts data and material data and the like,stored in the parts storage unit D14, are used to form the virtualreality space.

TERMINAL DEVICE

[0057] As shown in FIG. 4, a terminal device 1 mainly consists of areceiver device 101 for receiving a digital broadcast programdistributed from the host station 3, and a data processing unit 110. Thedata processing unit 110 transmits and receives data individuallybetween itself and the server station 2 via the network 4, and displaysan image obtained from the data received by the receiver device 101 andthe data received from the server station, on a display device. When itis of a type having a communication mechanism with the Internet and aninterface with the receiver device 101, an entertainment device ordomestic terminal can be used as the data processing device 110.

[0058] The receiver device 101 includes an antenna ANT, a receiver unit102 equipped with a tuner for selecting a broadcast channel, and aninterface unit 103 provided between the receiver unit 102 and the dataprocessing device 110.

[0059] The receiver unit 102 receives data on the channel selected bythe tuner by an external operation via the antenna ANT, and furtherdecodes the received data to be sent to the interface unit 103. In thisembodiment, transmission data distributed on the air are received withuse of the antenna ANT; however in the case of a cable broadcasting suchas CATV, data may be transmitted and received through an optical fiberor the like, instead of the antenna ANT.

[0060] The interface portion 103 has an interface used for sending datadecoded by the receiver unit 102 to the data processing device 110. Asthe interface, a high-speed interface such as USB (universal serial bus)or IEEE 1394 is used. Such a high-speed interface is suitable for thetransmission of large-size data such as image data.

[0061] The data processing device 110 has the following structure.

[0062] The data processing device 110 has a main bus B1 and sub-bus B2.These buses B1 and B2 are connected to each other via a bus interfaceINT in such a manner that they can be disconnected as needed. To themain bus B1, there are connected a main CPU 10 consisting of a firstvector processing unit (VPU0 to be called the first VPU hereinafter) 20tightly coupled with the CPU core, a second vector processing unit (VPU1to be called the second VPU hereinafter) 21 which exists by itself, agraphical synthesizer interface (GIF) 30 serving as an arbiter for thefirst VPU 20 and the second VPU 21, and the like, a main memory 11consisting of a RAM, a main DMAC (direct memory access controller) 12,and MPEG (moving picture experts group) decoder (MDEC) 13, as well as agraphic processing means (graphical synthesizer to be called “GS”hereinafter) via the GIF 30. To the GS 31, a CRTC (CRT controller) 33for generating a video output signal is generated.

[0063] When staring the data processing device 10, the main CPU 10 readsthe starter program from the ROM 17 on the sub-bus B2 via the businterface INT, and starts the operating system by executing the starterprogram. Further, the CPU controls a media drive 60 and read applicationprograms and data from a medium 61 mounted in the media drive 60, whichare then stored in the main memory 11. Further, the CPU carries out, incollaboration with the first VPU 20, a geometry processing onthree-dimensional object data (coordinate values of apexes(representative points) of polygons) constituted by, for example, aplurality of basic figures (polygons).

[0064] The first VPU 20 has a plurality of calculation elements forcalculating a real number of the floating point, and these elementscarry out calculations of floating points in parallel. Morespecifically, the main CPU 10 and the first VPU 20 carry out arithmeticoperations which require a fine operation in the unit of each polygon inthe geometry processing. Further, the first VPU 20 generates a displaylist containing a series of apex coordinates obtained by the arithmeticoperations and polygon definition data such as shading mode data.

[0065] As in the case of the first VPU 20, the second VPU 21 carries outcalculations of floating points in parallel. Then, it generates adisplay list having contents of relatively simple two-dimensionalpolygon definition data. This data can be generated by operations forgenerating an image by the operation of an operating device 81 and amatrix, such as transparent conversion for a matter of a simple shapesuch as a building or an automobile, parallel light source calculationand two-dimensional curvature generation.

[0066] The display lists generated by the first VPU 20 and the secondVPU 21 are transferred to the GS 31 via the GIF 30.

[0067] The GIF 30 is designed to arbitrate the display lists generatedby the first VPU 20 and the second VPU 21 so that they do not collidewith each other while they are transferred to the GS 31. The GS 31 holdsgraphical contexts, and reads a respective graphical context based onthe identification data of the image context contained in the displaylist informed from the GIF 30. With use of the read context, a renderingprocessing carried out and thus polygons are drawn in a frame memory 32.The frame memory 32 can be used a texture memory as well, and thereforea pixel image on the frame memory can be pasted as a texture on apolygon drawn.

[0068] The main DMAC 12 carries out a DMA transfer control onto eachcircuit connected to the main bus B1, and also carried out a DMAtransfer control onto each circuit connected to the sub-bus B2 inaccordance with the status of the bus interface INT. The MDEC 13operates in parallel with the main CPU 10, and expands the datacompressed by the MPEG (moving picture experts group) mode or JPEG(joint photographic experts group) mode or the like.

[0069] To the sub-bus B2, there are connected a sub-memory 15 consistingof a sub-CPU 14 having a structure of a microprocessor or the like, anda RAM, a sub-DMAC 16, a ROM 17 which stores programs including theoperating system, a sound processing unit (SPU) 40 for reading sounddata stored in a sound memory 41 and outputting it as an audio output, acommunication control unit (ATM) 40 for transmitting or receiving databetween itself and the server station 2 via the network 4, a media drivefor setting media such as CD-ROM and DVD-ROM, and an input unit 70.

[0070] The input unit 70 is an interface having the same specificationas that of the interface unit 103 of the receiver device 101. The datareceived by the receiver device 101 is input to this unit.

[0071] Next, examples of the operation using the data providing systemof this embodiment will now be described.

FIRST EXAMPLE OF THE OPERATION

[0072] First, in the electronic commerce and contents distribution, agreat number of terminal devices 1 access all at once to one serverstation 2, and therefore the congestion can easily occur in the serverstation 2 and the network 4. Here, an example of the operation forpreventing such congestion will now be discussed.

[0073]FIG. 5 briefly shows an example of such an operation. Here,individual data to be provided for a particular one of a plurality ofterminal devices 1, which made a request of providing data, are dividedto the particular terminal device 1 and the individually communicableserver station 2. At the same time, common data indicating the loadstatus of the server station 2 or the network 4 is supplied to the hoststation 3 as well. Thus, the transmission of the common data is doneprior to the transmission of the individual data. This example presentsa status of a case where the server station actually makes access to theterminal device 1 to be accessed.

[0074] Examples of the individual data are order data used in theelectronic commerce, authentication data and menu data of the digitalbroadcasting. Examples of the load data are a real time congestion map,a congestion site menu and popular site menu. It is only natural thatthese data are just examples.

[0075]FIG. 7 shows the operational procedure which involves the serverstation 2 and the host station 3 in the above-described situation.

[0076] The server station 2 counts the number of accesses each time aterminal device 1 makes access to it (steps S101 and S102). The countednumber is handled as the load data indicating the load status of theserver station 2. The load data is sent to the host station 3 via thetransmission and reception unit 202 (step S103).

[0077] The host station 3 receives the load data sent from the serverstation 2 (step S104), and compares it with the reference value for theload status preset by the data analysis unit 311. When the access numberindicated by the load data is larger than the reference value, it isjudged that the server station 2 is in a congestion state. On the otherhand, when the load data indicated by the load data is smaller than thereference value, it is judged that the server station 2 is not in acongestion state, and the operation proceeds on to the step 109 (stepS105: No).

[0078] While in a congestion state, the host station 3 requests therespective server station 2 to send necessary data to the host station 3so as to be able to serve as a substitute which can provide data for theterminal device 1 in place of the server 2 (step S105: Yes, S106).

[0079] When there is a request from the host station 3 that it willprovide data in place of the server station 2, the respective serverstation 2 transmits the request data and the other necessary data to thehost station 3 (step S107). An example of such data provided in asubstituted manner, is the top page of an Internet homepage.

[0080] The host station 3 forms common data to be broadcasted, from thusobtained load data and data to be provided in the substituted manner,for each server station 2 (step S109). The thus formed common data aredistributed to all of the terminal devices 1 all at once in real time(step S110). The user receives the common data broadcasted from the hoststation 3 with the terminal device 1, on which the data are displayed.

[0081] With the above-described example of the operation, it is possibleto find out the congestion state of each server station 2 before tryingto access to the server station 2. Therefore, it is possible to cancelaccessing to a server station 2 in a congestion state before in advance.Since the data from that server station 2 are included in the commondata distributed from the host station 3, it becomes possible for theuser to obtain desired data without accessing to the server station 2.

SECOND EXAMPLE OF THE OPERATION

[0082] As the second example, a case where data is provided to a uservia a virtual reality space will now be described. Here, an Internetgame is considered.

[0083] The data appearing in the virtual reality space include data forthe position or the like of an object image, as well as behaviorlimitation data used to limit the movement of each and individual objectimage.

[0084] The virtual reality space may be of one unity common to aplurality of terminal devices 1 and the server station 2; however inthis example, partial spaces are established and these partial spacesare associated together to become one entire virtual reality space. Inthe case where one virtual reality space is constituted as a whole, eachindividual virtual reality space is called “partial space”. An exampleof the partial space is a game space consisting of a plurality of stagesin which a player can keep on moving forward to the next stage each timethe present stage is cleared. In this case, one stage is formed in eachand every partial space, and one gate space is established byassociating all the stages together.

[0085] In this example, in order to reduce the load on the processingand the size of data flowing through the network, the terminal devices 1and each server station 2 share the basic parts data, the material dataand the like, which constitute its partial space, and they carry outcalculations for the virtual reality space at the same time in parallel.The parts data and material data of the terminal device 1 are recordedon a media such as CD-ROM or DVD-ROM by the as they are receivedindividually from the server station or distributed by the broadcastingfrom the host station 3, and then these media are distributed. The partsdata, the material data and the like are preserved in the host station 3as well.

[0086]FIG. 6 is an explanatory diagram illustrating the technicalconcept of the processing in the operation of this example.

[0087] The server station 2 performs calculations for the mutualproximity effect between the partial spaces of the users accessing viathe terminal devices 1 (excluding the users who are only standing by towatch) to the partial space managed by the station 2 itself, on thebasis of the respective data such as the parts data and material datasent from the host station 3. The results of the calculations are sentback to the user as a response. At the same time, the space state data,which is the results of the calculations, are transferred by uplink tothe host station 3. The “calculation of the mutual proximity effect” canbe defined as the calculation of the change in the positionalrelationship between the object images of the user and others, and thechange in the status when on object image is moved.

[0088] The host station 3 integrates uplinks of the partial spaces fromthe server stations 2, and then broadcasts it as the data indicating thecommon virtual reality space.

[0089] The terminal device 1 calculates the virtual reality space on thebasis of the response from the server station 2 and the status databroadcasted, using the parts data and material data as in the case ofthe server station 2. In the case of the mutual proximity effect of alow latency, the reaction is calculated on the basis of the responsefrom the server 2, and the result is sent back to the server station 2as a response. The movement limitation between partial spaces iscalculated on the basis of the data broadcasted from the host station 3as a remote operation. Thus, a user can stand by and watch the virtualreality space only by the broadcasted data without actually accessing tothe server station 2. Further, the transfer of object between partialspaces can be smoothly limited on the basis of the calculation of thestatus of the server station (partial space) to which an object istransferred, and the calculation of the remote operation, from thebroadcasted data. In this manner, a congestion resulted by needlesconcentration of accessing can be avoided.

[0090] The number of users who actually perform the mutual proximityeffect must be limited in the partial space. The limitation of enteringof many users at once from a remote space is more difficult than thecalculation of the mutual proximity effect; however with use of thebroadcasted data described above, such a limitation can be easilyperformed.

[0091]FIG. 8 is an explanatory diagram illustrating the procedure usingthe terminal device 1, the server station 2 and the host station 3 inthis example of the operation.

[0092] First, a partial space is constructed (formed) for each of aplurality of server stations 2, and the structure data for each partialspace and the data indicating the status are transmitted to the hoststation 3 (steps S201 and S202). The host station 3 integrates structuredata received from all of the server stations 2 to generate integratedstructure data, and distributes the integrated structure data all atonce to all of the terminal devices 1 (steps S203 and S204).

[0093] A terminal device 1 extracts the data of a server station 2 towhich the terminal device 1 is accessing, out of the received integratedstructure data. Then, this device constructs (forms) a virtual realityspace within the device itself (steps S205 and S206). The virtualreality space has the same structure as the partial space within theserver station 2 to be accessed.

[0094] The user carries out the operation of an object image to appear,move, disappear and the like, in the virtual reality space inside theself device, within a range limited on the basis of the behaviorlimitation data determined in advance (step S207). The processingcorresponding to this operation is executed within the terminal device1. The change of the status of the virtual reality space formed in theterminal device 1 by the user's operation is sent out to the serverstation 2 as the behavior data in real time (step S208).

[0095] The server station 2 analyzes the behavior data sent from eachterminal device 1, and the result of the analysis is reflected on thecontents of the virtual reality space. The change of the virtual realityspace generated within each terminal device 1 follows the behaviorlimitation data, and therefore the changes of the device will notcontradict with each other even if the change is reflected on thevirtual reality space within the server station 2.

[0096] Further, it is allowed to operate on the virtual reality space inthe server station 2 directly by the terminal device 1, and by thisoperation, the status of the virtual reality space in the server station2 can be changed (steps S209 and S210). Thus, the change of the statusof the virtual reality space in the server station 2, which occurs onthe basis of the behavior data or by the direct operation, is handled asthe variation data indicating the status of the virtual reality spaceafter the variation, and then transmitted to the host station 3 in realtime (step S211).

[0097] When receives the variation data from each server station 2, thehost station 3 integrates the received data so as to form integratedvariation data. The integrated variation data is distributed to all ofthe terminal devices 1 in real time. The integrated data is supplied toeach server station 2 as well (step S212 and S213). The integratedvariation data includes the variation data of the virtual reality spacewithin each server station 2, the behavior limitation data which changesalong with the variation of the virtual reality space, the data of theload status of each server station 2, and the like. In the case whereone virtual reality space is formed by a plurality of server stations 2,the integrate data sometimes includes the data of the global variationstatus generated by the variation status of each partial virtual realityspace.

[0098] The terminal device 1 receives the integrated variation data andreflects it to the contents of the virtual reality space within thedevice itself (steps S214 and S215). The server station 2 receives theintegrated variation data and reflects it to the contents of the virtualreality space within the device itself (steps S216 and S217).

[0099] As described above, each terminal device 1 forms the same virtualreality space as that of the accessed server 2 within the terminaldevice itself, and carries out various operations on the terminal deviceside. Therefore, the load due to the processing which is originallyexecuted on the server station side as operated by the terminal deviceside, can be reduced.

[0100] The load on the network 4 at the time of access can be reduced.

[0101] Further, from the integrated variation data from the host station3, the status of the virtual reality space within some other serverstation 2 can be known, and therefore when the terminal device 1accesses another virtual reality space, the space of the same status asthat of that virtual reality space can be constructed immediately.Furthermore, even a terminal device3 1 which is not accessing any serverstation 2 can create and enjoy the status of the virtual reality spaceof a respective server station 2, within the terminal device itself byreceiving the integrated structure data and integrated variation data.

[0102] It should be noted that the above-described examples presentscases where a server station 2 provides individual data to a terminaldevice 1, and data common to a plurality of terminal devices 1 isbroadcasted via a host station 3; however the present invention can beapplied generally to all the cases where part of data to be provided istransmitted to all of the terminal devices 1 which are in a communicablestate, from one of a server station 2 and the host station 3, and therest of the data to be provided is transmitted to them from the other ofthe server station 2 and the host station 3, and thus the data to beprovided is reproduced in each of the terminal devices 1 in real time.

[0103] As is clear from the above descriptions, according to the presentinvention, the resource of the broadcasting and network can beefficiently utilized, and therefore it becomes possible for the user toobtain desired data more efficiently than the conventional technique.

[0104] Various embodiments and changes may be made thereunto withoutdeparting from the broad spirit and scope of the invention. Theabove-described embodiment is intended to illustrate the presentinvention, not to limit the scope of the present invention. The scope ofthe present invention is shown by the attached claims rather than theembodiment. Various modifications made within the meaning of anequivalent of the claims of the invention and within the claims are tobe regarded to be in the scope of the present invention.

1. A data providing system comprising: a first device for communicatingindividually with a plurality of terminal devices; and a second devicefor broadcasting data to all of the terminal devices which are incommunicable state with the first device, wherein part of reproducibledata to be provided is transmitted to the all of the terminal deviceswhich are in a communicable state from one of the first and seconddevice, and the rest of the data to be provided is transmitted to theall of the terminal devices in communicable state from the other of thefirst device and the second device, thereby enabling the provided datareproduced in the all of the terminal devices in real time.
 2. A dataproviding system comprising: a first device for communicatingindividually with a plurality of terminal devices each connected to anetwork; and a second device for broadcasting data to all of theterminal devices which are in communicable state with the first deviceat once, wherein the first device transmits individual data prepared inaccordance with a request from one of the terminal devices to the one ofthe terminal devices via the network, and the second device broadcastsdata indicating an operation state of the network, which changesoccasionally in accordance with a load on the first device, to all ofthe terminal devices.
 3. A data providing system comprising: a pluralityof first devices for communicating individually with a plurality ofterminal devices each connected to a network; and a second device forbroadcasting data to all of the terminal devices which are incommunicable state with the first devices, wherein each of saidplurality of first devices transmits individual data prepared inaccordance with a request from one of the terminal devices to said oneof the terminal devices via the network, and the second devicebroadcasts data indicating an operation state of the network, whichchanges occasionally in accordance with a load on a respective one ofthe first devices, to all of the terminal devices in real time, andtransmits as a proxy data to be sent by the first device when some orall of said plurality of first devices have a load which exceeds apredetermined value.
 4. A data providing system according to claim 3,wherein at least one of the first devices further comprises: a firstdata generator for generating load data indicating a load status of thesubject device which changes occasionally in accordance with an accessstatus sent from said plurality of terminal devices; and a unit fortransmitting the generated load data to the second device in real time;and the second device includes a second data generator for generatingthe operation status data on the basis of the load data received fromthe at least one of the first devices.
 5. A data providing systemcomprising: a first device for communicating individually with aplurality of terminal devices each connected to a network; and a seconddevice for broadcasting data to all of the terminal devices which are incommunicable state with the first devices, wherein said plurality ofterminal devices and the first device are of types which enable to forma common logical space, the first device detects a request of revisionof the logical space from at least one of the terminal devices, andchanges the logical space on the basis of the detected status, and thesecond device broadcasts the status of the logical space after revisionin the first device to said plurality of terminal devices.
 6. A dataproviding system comprising: a plurality of first devices forcommunicating individually with a plurality of terminal devices eachconnected to a network; and a second device for broadcasting data of thesame contents to said plurality of terminal devices, wherein each ofsaid plurality of first devices has a logical space formed therein to beaccessible by said plurality of terminal devices, these logical spacesbeing formed associated with each other, and the second device, when thestatus of the logical space changes in one of the first devices, variesthe status of the logical space of other device on the basis of thevariation status, and provides the statuses of all the logical spacesafter the variation to said plurality of terminal devices in real time.7. A data providing system according to claim 6, wherein at least one ofsaid plurality of terminal devices further comprises: a status changerfor forming a logical space having the same structure as the logicalspace formed in the first device to be accessed by the subject terminaldevice, within the subject terminal device, and for changing the statusof the formed logical space, and a data transmitter for transmitting,when the status of the logical space within the subject terminal devicehas changed, data indicating the variation status to the first device tobe accessed by the subject terminal device in real time.
 8. A dataproviding method carried out via a network, comprising the steps of:distributing part of data to be provided to a plurality of terminaldevices connected a network, to a first device communicable individuallyto each of said plurality of terminal devices; distributing the rest ofthe data to be provided, to a second device which broadcasts datatowards said plurality of terminal devices; and transmitting the datadistributed to the first device and the second device at the same time,thereby enabling each of said plurality of terminal devices to reproducethe data to be provided in real time.
 9. A data providing method carriedout via a network, comprising the steps of: distributing individual datato a first device communicable individually to a plurality of terminaldevices connected a network, the data being to be provided to one of aplurality of terminal devices, which has made a request; distributingdata indicating a load status of the first device or the network, to asecond device which broadcasts data towards said plurality of terminaldevices; and transmitting the data distributed to the second deviceprior to transmission of the data distributed to the first device,thereby enabling to present the load status of the first device or thenetwork to a terminal device which is accessing to the first device. 10.A data providing method carried out via a network, comprising the stepsof: forming a logical space common to a plurality of terminal devicesconnected a network, and a first device communicable individually toeach of said plurality of terminal devices; and broadcasting, when astatus of the logical space has changed in accordance with an accessingstatus from one of said plurality of terminal devices, a status of thechanged logical space, to said plurality of terminal devices in realtime.
 11. A data providing apparatus comprising: a first communicationunit for transmitting part of reproducible data to be provided to afirst device communicable individually with a plurality of terminaldevices, so as to make the first device to transmit the data to each ofsaid plurality of terminal devices; and a second communication unit fortransmitting the rest of the data to be provided, to all of the terminaldevices which are in communicable state with the first device at once,wherein said all of the terminal devices are rendered to construct anenvironment in which the all of the terminal devices enable to reproducethe data to be provided in real time in cooperation with the firstdevice.
 12. A data providing apparatus comprising: a first communicationunit for transmitting part of reproducible data to be provided to afirst device communicable individually with a plurality of terminaldevices connected to a network, so as to make the first device totransmit the data to each of said plurality of terminal devices; a loaddetector for detecting a load on the first device when individuallytransmitting the data to be provided to one of said plurality ofterminal devices via the network; a generator for generating operationstatus data indicating an operation status of the network, which changesoccasionally in accordance with the detected load of the first device;and a second communication unit for broadcasting the generated operationstatus data, to all of the terminal devices which are in communicablestate with the first device, wherein said all of said terminal devicesare rendered to construct an environment in which said all of saidterminal devices enable to reproduce the data to be provided in realtime in cooperation with the first device.
 13. A data providingapparatus according to claim 12, further comprising a proxy transmissionunit for transmitting, as a proxy, individual data to be transmitted bythe first device when the load detected by the load detector exceeds apredetermined value.
 14. A data providing apparatus comprising: a firstcommunication unit for communicating with a first device communicableindividually with a plurality of terminal devices connected to anetwork; and a second communication unit for broadcasting data to all ofthe terminal devices which are in communicable state with the firstdevice, wherein a common logical space can be created in said pluralityof terminal devices and the first device, the first device detects arequest of revision of the logical space from at least one of theterminal devices, and changes the logical space on the basis of thedetected status, and the second device handles the status of the logicalspace after revision in the first device, acquired through the firstcommunication unit, as the data to be broadcasted.
 15. A data providingapparatus comprising: a first communication unit for communicating witha plurality of first devices communicable individually with a pluralityof terminal devices connected to a network; and a second communicationunit for broadcasting data to all of terminal devices which are incommunicable state with said plurality of first devices, wherein each ofsaid plurality of first devices forms a logical space accessible by saidplurality of terminal devices in association with the other of saidplurality of first devices, and the second communication unit acquiresthe changed status via the first communication unit when the status ofthe logical space has changed in one of said plurality of first devices,and handles the status of other logical space which has changed inaccordance with the changed status, as the data to be broadcasted.
 16. Arecording medium recorded with a computer program for rendering acomputer to function as a data providing device, said device comprising:a first communication unit for transmitting part of reproducible data tobe provided to a first device communicable individually with a pluralityof terminal devices, so as to make the first device to transmit the datato each of said plurality of terminal devices; and a secondcommunication unit for transmitting the rest of the data to be provided,to all of the terminal devices which are in communicable state with thefirst device at once, wherein the data providing device makes all ofsaid plurality of terminal devices to construct an environment in whichthe all of said plurality of terminal devices enable to reproduce thedata to be provided in real time in cooperation with the first device.17. A recording medium recorded with a computer program for rendering acomputer to function as a data providing device, said device comprising:a first communication unit for transmitting part of reproducible data tobe provided to a first device communicable individually with a pluralityof terminal devices connected to a network, so as to make the firstdevice to transmit the data to each of said plurality of terminaldevices; a load detection unit for detecting a load on the first devicewhen individually transmitting the data to be provided to one of saidplurality of terminal devices via the network; a generator forgenerating operation status data indicating an operation status of thenetwork, which changes occasionally in accordance with the detected loadof the first device; and a second communication unit for broadcastingthe generated operation status data, to all of the terminal deviceswhich are in communicable state with the first device, wherein the dataproviding device makes each of said plurality of terminal devices toconstruct an environment in which said plurality of terminal devices canreproduce the data to be provided in real time in cooperation with thefirst device.
 18. A recording medium recorded with a computer programfor rendering a computer to serve as data providing device, said devicecomprising: a first communication unit for communicating with a firstdevice communicable individually with a plurality of terminal devicesconnected to a network; and a second communication unit for broadcastingdata to all of terminal devices which are in communicable state with thefirst device, wherein a common logical space can be created in saidplurality of terminal devices and the first device, the first devicedetects a request of revision of the logical space from at least one ofthe terminal devices, and changes the logical space on the basis of thedetected status, and the second device handles the status of the logicalspace after revision in the first device, acquired through the firstcommunication unit, as the data to be broadcasted.
 19. A recordingmedium recorded with a computer program for rendering a computer toserve as data providing device, said device comprising: a firstcommunication unit for communicating with a plurality of first devicescommunicable individually with a plurality of terminal devices connectedto a network; and a second communication unit for broadcasting data toall of terminal devices which are in communicable state with saidplurality of first devices, wherein each of said plurality of firstdevices creates logical spaces accessible by said plurality of terminaldevices in association with the other of said plurality of firstdevices, and the second communication unit acquires the changed statusvia the first communication unit when the status of the logical spacehas changed in one of said plurality of first devices, and handles thestatus of other logical space which has changed in accordance with thechanged status, as the data to be broadcasted.